GraphQL Server
GraphQLのServer実装、そのLibarary
Endpointを1つ1つ作らなくていい
clientからのreqは全てGraphQLで来る
clientが何であるかをServerは気にする必要がない
割と実装しないといけない箇所が多くてだるそうmrsekut.icon
基本的には、以下を全て定義する必要がある
GraphQL Schema
GraphQLのDataSource
GraphQLのQuery型
GraphQLのMutation型
GraphQLのResolver
実装の流れ
https://gyazo.com/4d191545dea56dc3e0c4a2364bd538ae
色がついているところは雑なイメージ(あまり信用しなくていい)
紛らわしいが、Queryとqueryは異なる概念として扱っているmrsekut.icon
GraphQL SchemaでModelringをする
Entityを定義したり、その間のrelationの宣言をする
宣言されたSchemaはグラフ構造になる
GraphQLのDataSourceを定義する
API ServerからRESTで受け取ったデータや、DBからSQLやORMで受け取ったデータを加工して、最初に定義したGraphQL Schemaの形に整形する作業などをする
ここが一番だるそうmrsekut.icon
必要に応じて
GraphQLのQuery型を定義する
GraphQLのMutation型を定義する
GraphQLのResolverを定義する
実装
@apollo/server
❌️GraphQL Nexus
GraphQL Yoga
Hasura
AppSync
https://speakerdeck.com/chloe463/graphqlsabafalsesukimahuasutokai-fa-woban-nian-jing-te
/tasuwo-graphql/サーバサイドにおけるGraphQLの実行管理
https://qiita.com/saboyutaka/items/8a75602a3a7b52af1a69
/tasuwo/爆速で GraphQL サーバーを実装する
https://buildersbox.corp-sansan.com/entry/2020/07/17/110000